.. _cmmIxxHelOnceGetSpeed:

cmmIxxHelOnceGetSpeed
========================
------------------------

SYNOPSIS
```````````

.. code-block:: none

     VT_I4 cmmIxxHelOnceGetSpeed(
        [in] VT_I4 HelId, [out] VT_PI4 Master, 
        [out] VT_PI4 SpeedMode, [out] VT_PR8 WorkSpeed, 
        [out] VT_PR8 Acc, [out] VT_PR8 Dec)


DESCRIPTION
`````````````````````

- 확장 보간제어 상에서 헬리컬보간 작업을 수행시의 속도패턴을 설정 하거나 설정된 값을 읽어옵니다.

PARAMETER
`````````````````

- HelId : 속도 설정을 하고자 하는 헬리컬 보간 이송 작업의 아이디를 지정합니다. CMMSDK 는
  통합라이브러리이므로 여러 개의 보드가 장착되어 있는 경우에 여러 개의 헬리컬 보간 작업을 동시에 수행할 수도
  있습니다. 따라서 각각의 작업을 구분지어줄 아이디가 필요합니다. cmmIxxHelOnce() / cmmIxxHelOnceStart() 의
  헬리컬 이송 함수를 실행할 때에도 HelId 를 입력하게 되어 있는데, 여기서 지정한 속도 패턴은 동일한 HelId 가
  지정된 헬리컬 이송 함수에서 반영됩니다.


\

- Master: cmmIxxHelOnceSetSpeed 함수의 인자이며, 속도 설정의 마스터를 설정합니다. 이 값에 따라서 지정한
  속도패턴의 의미가 다음과 같이 달라집니다.


.. csv-table::
  :widths: 10 85
  :header-rows: 1
  :stub-columns: 0

    Value, Meaning
    0, "
  | 이 함수를 통하여 설정하는 속도 패턴은 Z축과 U축의 직선 보간에 대한 벡터 속도로 적용됩니다.
  | (U 축의 이송량은 원호보간의 원주 길이에 해당함.) 만일 Z축이 포함되지 않은 헬리컬 보간이라면 이 
  | 모드는 Master = 1 로 설정한 것과 동일한 것이 되며 이 함수를 통하여 
  | 설정하는 속도 패턴은 U 축의 속도로 적용됩니다."
  1, "
  | 이함수를 통하여 설정하는 속도 패턴은 U 축의 속도로 적용됩니다. U 축은 원주 길이에
  | 해당하는 이송을 하게 되므로 U 축의 속도는 곧 원호보간의 속도입니다. Z 축의 속도는
  | 원주 길이에 대한 상대적인 거리비에 따라 자동으로 결정됩니다. "
  2,  "
  | 이 함수를 통하여 설정하는 속도 패턴은 Z 축의 속도로 적용됩니다. 원호보간 속도는 Z 축
  | 이동 거리에 대한 상대적인 거리비에 따라 자동으로 결정됩니다. 만일 Z축이 포함되지 않은 
  | 헬리컬 보간이라면 이 모드는 Master = 1 로 설정한 것과 동일한 것이 되며 U 축의 속도로 적용됩니다."

- Master: cmmIxxHelOnceGetSpeed 함수의 인자이며, 마스터 속도 설정을 반환합니다.

.. csv-table::
    :widths: 10 85
    :header-rows: 1
    :stub-columns: 0

    Value, Meaning
    0, Z 축과 U 축의 직선 보간에 대한 벡터 속도를 마스터 속도로 설정된 상태입니다.
    1, 이 함수를 통하여 설정하는 속도 패턴은 U 축의 속도를 마스터 속도로 설정된 상태입니다.
    2, 이 함수를 통하여 설정하는 속도 패턴은 Z 축의 속도를 마스터 속도로 설정된 상태입니다.

-  SpeedMode : cmmIxxHelOnceSetSpeed 함수의 인자이며, 속도 모드를 설정합니다.

.. csv-table::
    :widths: 10 85
    :header-rows: 1
    :stub-columns: 0

    Value, Meaning
    0 또는 cmSMODE_C, CONSTANT 속도모드 => 가감속을 수행하지 않습니다.
    1 또는 cmSMODE_T, TRAPEZOIDAL 속도모드 => 사다리꼴 가감속을 수행합니다.
    2 또는 cmSMODE_S, S-CURVE 속도모드 => S-CURVE 가감속을 수행합니다.

- SpeedMode : cmmIxxHelOnceGetSpeed 함수의 인자이며, 속도 모드를 반환합니다.

.. csv-table::
    :widths: 10 85
    :header-rows: 1
    :stub-columns: 0

    Value, Meaning
    0 또는 cmSMODE_C, CONSTANT 속도모드 => 가감속을 수행하지 않습니다.
    1 또는 cmSMODE_T, TRAPEZOIDAL 속도모드 => 사다리꼴 가감속을 수행합니다.
    2 또는 cmSMODE_S, S-CURVE 속도모드 => S-CURVE 가감속을 수행합니다.

- WorkSpeed : cmmIxxHelOnceSetSpeed 함수의 인자이며, 정속도를 지정합니다. 

\

- WorkSpeed : cmmIxxHelOnceGetSpeed 함수의 인자이며, 지정된 정속도를 반환합니다.

\

- Acc : cmmIxxHelOnceSetSpeed 함수의 인자이며, 가속도를 지정합니다. 단, 이 값을 0 으로 설정하면 가속구간이
  없이 즉시 작업속도로 올라갑니다(실제로는 가속값이 무한대).

\

- Acc : cmmIxxHelOnceGetSpeed 함수의 인자이며, 가속도를 반환합니다. 

\

- Dec : cmmIxxHelOnceSetSpeed 함수의 인자이며, 감속도를 지정합니다. 단, 이 값을 0 으로 설정하면 감속구간이
  없이 즉시 정지합니다(실제로는 감속값이 무한대).

\

- Dec : cmmIxxHelOnceGetSpeed 함수의 인자이며, 감속도를 반환합니다.


EXAMPLE
`````````

- 예제는 cmmIxxHelOnceSetSpeed를 참고해주세요.



.. seealso:: :ref:`cmmIxxHelOnceSetSpeed`